package com.sg.dto.biz.app.req;

import com.sg.common.dto.BaseDto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.constraints.NotNull;
import java.io.Serializable;
import java.util.Date;

/**
 * @desc UpdateEvaThemeReqDto
 * @使用场景
 */
@Data
public class UpdateEvaThemeReqDto extends BaseDto implements Serializable {

    /**
     * 评价主题ID
     */
    @NotNull(message = "评价主题ID不能为空")
    @ApiModelProperty("评价主题ID")
    private String evaluationSubjectId;

    /**
     * 评价主题名称
     */
    @ApiModelProperty("评价主题名称")
    private String evaluationSubjectName;

    /**
     * 配置方案ID
     */
    @NotNull(message = "配置方案ID 不能为空")
    @ApiModelProperty("配置方案ID ")
    private String confSchemeId;

    /**
     * 授权类型 CYCLE_TIME:周期时间型 FIXED_TIME:固定时间型 QUANTITY:数量型
     */
    @ApiModelProperty("授权类型")
    private String authType;

    /**
     * 剩余授权数
     */
    @ApiModelProperty("剩余授权数")
    private Long remainingQty;

    /**
     * 授权单位 YEAR:年 A:个 COVER:套
     */
    @ApiModelProperty("授权单位")
    private String authUnit;

    /**
     * 开始时间
     */
    @ApiModelProperty("开始时间")
    private Date startTime;

    /**
     * 结束时间
     */
    @ApiModelProperty("结束时间")
    private Date endTime;

    /**
     * 是否主配置方案 TRUE:是 FALSE:否
     */
    @NotNull(message = "是否主配置方案不能为空")
    @ApiModelProperty("是否主配置方案")
    private String isMainConfScheme;

    /**
     * 主体生命周期 CURRENTLY_VALID:当前有效 EDITING:正在编辑 ARCHIVING:历史存档
     */
    @ApiModelProperty("主体生命周期")
    private String subjectLifeCycle;

}
